home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
QRZ! Ham Radio 6
/
QRZ Ham Radio Callsign Database - Volume 6.iso
/
pc
/
files
/
p_baycom
/
tfpcx210.exe
/
UPDATE.DOC
< prev
Wrap
Text File
|
1993-11-20
|
43KB
|
1,081 lines
████████ ███████ ██████ ████ ██ ██
██▒██▒██▒ ██▒▒██▒ ██▒▒██ ██▒▒██ ██▒ ██▒
█▒▒██▒ █▒ ██▒ █▒ ██▒ ██▒ ██▒▒ █▒ ██ ██▒▒
▒ ██▒ ▒ ██▒█ ▒ ██▒ ██▒ ██▒ ▒ ████▒▒
██▒ ████▒ █████▒▒ ██▒ ██▒▒
██▒ ██▒█▒ ██▒▒▒▒ ██▒ ████
██▒ ██▒ ▒ ██▒ ██▒ █ ██▒▒██
██▒ ██▒ ██▒ ██ ██▒ ██▒▒ ██
████ ████ ████ ████▒▒ ██▒ ██▒
▒▒▒▒ ▒▒▒▒ ▒▒▒▒ ▒▒▒▒ ▒▒ ▒▒
The Firmware PC Extended
Version 2.10 (20. November 1993)
Residenter AX.25-Controller für PC
und BayCom-Modem, -USCC-Karte,
PA0HZP-OptoPcScc-Karte, KISS
mit WA8DED-Hostmode-Interface
von René Stange, DG0FT @DB0KG.DEU.EU
Frei für Funkamateure, keine kommerzielle Nutzung
1. Vorwort
Diese TFPCX-Version hat leider viel länger auf sich warten lassen,
als ich ursprünglich geplant hatte. Da die im Februar erschienene
Version 2.01, in baldiger Erwartung dieser vorliegenden Version, von
mir nie in den Mailboxen angekündigt wurde und auch kaum bekannt
geworden ist, beziehe ich mich in dieser Dokumentation auf das TFPCX
v2.00 als Vorgängerversion. Um die Veröffentlichung nicht noch
weiter zu verzögern, mußte ich einige schon angekündigte Änderungen,
wie die grundlegende Überarbeitung der Modemansteuerung, nochmal
verschieben.
Als Neuerung ist vor allem die Unterstützung des KISS-Modes für
mehrere Ports zugleich, der PA0HZP-OptoPcScc-Karte und der BayCom-
9k6-USCC-Karte zu erwähnen. Außerdem gibt es bessere Konfigurations-
möglichkeiten, Verbesserungen beim DAMA-Betrieb u.a. Für die
Aktivierung des KISS-Modes im TNC wird das neue Programm KISSINIT
mitgeliefert (siehe KISSINIT.DOC). Die Neuerungen sind in Abschnitt
3. aufgeführt. Abschnitt 4. gibt einige Hinweise, was beim Umstieg
von einer früheren Version zu beachten ist.
...
Mein Dank gilt diesmal Peter (DB2OS), Asko (DG2BRS), Denis (G0KIU),
Henk (PA0HZP), Rob (PE1CHL), dem BayCom-Team, allen Spendern und
allen Usern, die mir mit Hinweisen und Vorschlägen geholfen haben.
73s von René, DG0FT Strausberg, 20. November 1993
2. Hinweise zur Dokumentation
...
An einigen Stellen (besonders in Anhang 1.) wird der Standardwert 10
als die maximale Kanalanzahl genannt. Dieser Wert ist konfigurierbar
und dient nur als Platzhalter. Wird die Option '-CH' verwendet, gilt
der angegebene Parameter anstelle der '10'.
Begriffe und Abkürzungen:
...
KISS (KA9Q u.a.) steht für 'Keep It Simple Stupid' und
definiert ein einfaches Datenformat zur Übertragung von
Frames und TNC-Parametern über eine asynchrone serielle
Schnittstelle. Ursprüngliches Ziel war die Verlagerung
der Protokollabarbeitung aus dem TNC in den Terminal-
Rechner, um vom TNC nicht unterstützte Protokolle ver-
wenden zu können. KISS ist in vielen TNCs implementiert,
ermöglicht aber auch die direkte Rechner-Kopplung.
SMACK (DL5UE und DK5SG) ist die Abkürzung von 'Stuttgarts Modi-
fiziertes Amateurfunk-CRC-KISS' und erweitert das von
einer fehlerfreien Übertragung ausgehende KISS um ein
Prüfsummenverfahren (CRC), wodurch Übertragungsfehler
erkannt werden können.
...
3. Neuerungen seit Version 2.00
- Der KISS-Mode wird inklusive SMACK für bis zu 4 Ports und 57600
Baud unterstützt (Option -PKISS). Fehlerhafte Frames (z.B. durch
Zeichenverluste) werden ignoriert und gezählt (siehe Abschnitte
6.2.1. und 8.3.). Mittels TFPCX und KISS kann GP (DH1DAE) nun auch
mehrere TNCs parallel ansteuern.
- Die PA0HZP-OptoPcScc-Karte wird unterstützt (Option -POSCC, siehe
Abschnitt 6.2.1.).
- Die BayCom-9k6-USCC-Karte funktioniert jetzt auch mit dem TFPCX
(Option -PUSCC, siehe Abschnitt 6.2.1.). Bei wenigen BayCom-USCC-
Karten wurden auf Grund von Timing-Problemen sinnlose Daten
gesendet. Durch eine andere Ansteuerung der SCC-Controller werden
diese Probleme umgangen.
- Für SCC-Karten und COM-Ports (bei KISS) können AT-IRQs (9, 10, 11,
12, 14, 15) verwendet werden.
- Die Anzahl der freien Puffer (Option -BU) und der Connect-Kanäle
(Option -CH) und damit der benötigte Speicherplatz sind nun
konfigurierbar. (Standard: 600 Puffer/10 Kanäle, siehe Abschnitt
6.2.3.)
- Die Initialisierungsdatei (Option -F) kann nun Leerzeilen und
Kommentare enthalten. ESC-Zeichen werden automatisch erzeugt und
brauchen nicht mehr als '^' angegeben zu werden. (siehe Abschnitt
6.2.3.)
- Beim DRSI-Interface (Option -DR) wurden Inkompatiblitäten mit dem
DRSI-TNCTSR-Treiber beseitigt, die bisher z.B. zu Problemen mit
Monitor und Heardlist beim Betrieb mit FBB (F6FBB) führten. Falls
es durch diese Änderungen nun Probleme mit anderen Programmen gibt
(z.B. bei TOP), kann man mit der Option -DX das bisherige
(modifizierte) DRSI-Interface verwenden (siehe Abschnitt 6.2.2.).
- Der neue Befehl @PO ermöglicht die wahlweise Zuordnung eines Ports
zu einem Kanal, der dann nur von diesem Port aus connected werden
kann, was z.B. beim Programm TOP (DF8MT) nützlich ist (siehe
Abschnitte 7.8. und 8.2.).
- Durch einen Transparent-Modus bei Empfang (Befehl @M) und
abschaltbares Zeichenecho (Befehl E) ist der #BIN#-Empfang im
Terminalmode (z.B. mit TERM (DL5FBD)) möglich. (siehe Abschnitte
7.4. und 8.2.)
- Interne Connects (Loopback) lassen sich bei Bedarf verhindern
(Option -NL, siehe Abschnitt 6.2.3.).
- TXTAIL (Befehl @TA) wird bei seriellem Modem und SCC-Karte unter
Berücksichtigung von Baudrate und Timer-Ungenauigkeit optimal
eingestellt. Bisher gab es teilweise Probleme beim Betrieb mit 300
Baud.
- Wird die Option -P nicht angegeben, wird nun nicht mehr wie bisher
ein serielles Modem an COM1 benutzt, sondern überhaupt kein Port
angesteuert, was nur für Testzwecke mit internen Connects sinnvoll
ist. Im Normalfall ist -P also immer anzugeben.
- Die Option -D (Debug) bezieht sich jetzt auf die letzte vor dem -D
stehende Option -P (Port). Damit ist die Überwachung beliebiger
Ports auch beim Multiport-Betrieb möglich (siehe Abschnitt
6.2.3.).
- Disconnect im Hintergrundbetrieb bzw. Terminalmode ist mit Remote-
Kommando '//Q' möglich. (Befehl U, siehe Abschnitt 8.2.)
- Durch eine DAMA-Änderung (wie TF 2.6) sollten die bekannten
Meckermeldungen von TheNetNode-Digis bei Multiconnect nun kaum
noch auftreten.
- Der Extended Hostmode (DG3DBI) wird unterstützt und ermöglicht
schnellere Kommunikation mit dem Terminalprogramm.
- Die Default-Werte für die Parameter F, N, P, R, T, U, @A3, @I,
@T2, @T3, @T4 und @TA wurden geändert.
4. Schnellstart
...
Wurde bei einer Vorgängerversion keine '-P'-Option angegeben und der
Default-Port COM1 verwendet, ist nun unbedingt die Option '-PCOM1'
notwendig.
Falls bisher die Version 2.00 mit mehr als 10 Kanälen benutzt wurde,
muß die Option '-CHnn' beim Start von TFPCX angegeben werden, wobei
nn die gewünschte Kanalanzahl ist.
Wenn bisher die Option '-DR' verwendet wurde und damit bei dieser
Version Probleme mit Monitor oder Heardliste auftreten, dann sollte
anstelle von '-DR' die Option '-DX' angegeben werden (z.B. bei TOP).
...
6.2.1. Port- und Baudraten-Konfiguration
-P Angabe der benutzten Ports
Diese Option kann mehrfach verwendet werden und zwar maximal 2 mal
für serielle Modems, 1 mal für SCC-Karten und 4 mal für KISS-Ports,
wenn dabei nicht die Obergrenze von 8 Ports überschritten wird.
...
Wird die Option '-P' überhaupt nicht angegeben, wird auch kein Port
angesteuert, was nur für Tests mit internen Connects sinnvoll ist.
Die optional möglichen Portadressen müssen im Bereich von 0x100 bis
0x3F8 liegen und durch 8 teilbar sein. Bei SCC und KISS sind die
IRQs 2-5, 7, 9-12 und 14-15 möglich (bei XTs nur IRQs kleiner 8).
ATs haben keinen wirklichen IRQ 2. Anstelle dessen wird deshalb IRQ
9 verwendet. Jede Schnittstelle muß einen eigenen IRQ haben.
...
-PUSCC:<Base>:<IRQ>:<Modems> BayCom-USCC-Karte verwenden
-POSCC:<Base>:<IRQ>:<Modems> PA0HZP-OptoPcScc-Karte verwenden
Als Parameter wird die Basisadresse der SCC-Karte, der IRQ und eine
maximal 4 stellige Ziffernfolge angegeben, die über die Art der an
den bis zu 4 SCC-Ports angeschlossenden Modems Auskunft gibt.
Folgende Angaben sind möglich (siehe auch Anhang 3.2.):
0 Disable Port wird nicht benutzt (abgeschaltet)
1 Softclock Takt für Senden und Empfang wird intern erzeugt für
AFSK-Modems (kein Duplex möglich)
2 Hardclock Sendetakt wird vom Modem geliefert, Empfangstakt
wird intern erzeugt (z.B. G3RUH)
3 DF9IC-Modem Takt für Senden und Empfang wird vom Modem
geliefert, NRZ-Mode
4 PA0HZP-Port Empfangstakt wird intern erzeugt, extern durch 32
geteilt und dem SCC-Controller als Sendetakt wieder
zugeführt (für OptoPcScc-Karte)
5 PA0HZP-Timer Port wird nicht benutzt, erzeugt aber einen Zeit-
takt für Timing-Zwecke (nur für OptoPcScc-Karte)
Die Modemtypen 1 bis 3 sind speziell für die USCC-Karte vorgesehen,
während Typ 4 nur mit der OptoPcScc-Karte funktioniert.
Ziffer 5 hat eine besondere Bedeutung. Das TFPCX benötigt für die
verschiedenen internen Timer einen Zeittakt, der von der OptoPcScc-
Karte jedoch nicht geliefert wird. Deshalb wird der Systemtimer des
PC verwendet, der aber nur eine recht ungenaue Zeitmessung
ermöglicht, was bei einigen Parametern (z.B. TXDELAY und TXTAIL)
problematisch ist. Das TFPCX bietet die Möglichkeit, einen
ungenutzten SCC-Port zur Generierung eines genaueren Zeittaktes zu
verwenden, was auch unbedingt zu empfehlen ist, wenn nicht alle
Ports benötigt werden.
Beispiele:
...
TFPCX -PUSCC:300:7:31
USCC-Port 0 mit DF9IC-Modem, Port 1 mit Softclock, Ports 2 und 3
abgeschaltet. Diese Einstellung ist für die 9k6-USCC-Karte nötig,
die nur 2 SCC-Ports bietet. Wird gar kein Modem-Takt angegeben gilt
'1103' (wie oben), erfolgt jedoch eine Angabe mit weniger als 4
Ziffern gilt für den Rest '0'.
TFPCX -POSCC:150:3:4445
OptoPcScc-Karte mit Basisadresse 0x150, IRQ 3, Port 0 bis 2 werden
als Modemports mit externem Taktteiler benutzt, Port 3 erzeugt den
Zeittakt. Dies ist die Standardeinstellung für '-POSCC' ohne weitere
Parameter.
-PKISSn:<Base>:<IRQ> KISS-Port an COMn (n = 1-4)
Die Basisadresse <Base> wird automatisch ermittelt, kann aber bei
Bedarf auch manuell angegeben werden. IRQ 4 wird standardmässig für
COM1 und 3 verwendet, IRQ 3 für COM2 und 4. Stimmt diese Zuordnung
nicht, muß der IRQ angegeben werden.
Beispiele:
TFPCX -PKISS1
KISS-Port an COM1, Basisadresse und IRQ wird automatisch ermittelt.
Für COM1 und 2 reicht diese Angabe im Allgemeinen aus.
TFPCX -PKISS3:338:5
KISS-Port an COM3, Basisadresse 0x338, IRQ 5
-Bnnnn[:nnnn ...] Baudrate je Port einstellen
Bei mehreren Ports werden durch ':' getrennte Werte angegeben in der
Reihenfolge steigender Portnummern. Folgende Werte sind möglich:
Standard
serielles Modem 300, 1200, 2400 oder 4800 Baud 1200
SCC Softclock 50-38400 Baud 1200
PA0HZP-Port 50-38400 Baud 1200
Hardclock 50-38400 Baud 9600
DF9IC-Modem 1-65535 Baud (ohne Bedeutung) 9600
KISS 2400, 4800, 9600, 19200, 9600
38400 oder 57600 Baud
...
6.2.2. TFPC- und DRSI-Interface
...
-DX Modifiziertes DRSI-Interface benutzen
Diese Option entspricht der Option '-DR' des TFPCX v2.0x. Dort gab
es Inkompatibilitäten mit dem TNCTSR-Treiber bei Verwendung des
DRSI-Interfaces, die bei dieser Version beseitigt wurden. Falls
diese Änderungen nun bei anderen Programmen (z.B. TOP) Probleme
verursachen, sollte die Option '-DX' anstelle von '-DR' angegeben
werden.
...
6.2.3. Sonstige Optionen
-BU[nnnn] Anzahl der TFPCX-Puffer
Das TFPCX speichert die meisten Daten dynamisch in 32 Byte-Puffern.
Die Anzahl der benötigten Puffer kann je nach Verwendung sehr
unterschiedlich sein. Hat das TFPCX nur wenige Puffer können nur
wenige Frames zwischengespeichert werden und man erhält unter
Umständen 'TNC BUSY'-Meldungen, was meist zum Disconnect durch das
Terminalprogramm führt. Zu viele Puffer verschwenden dagegen
Speicherplatz.
Mit dieser Option kann die Pufferanzahl zwischen 400 und ca. 1500
konfiguriert werden. Der Maximalwert hängt von der benutzten Kanal-
anzahl ab und wird eingestellt, wenn die Option ohne Parameter
angegeben wird.
Meist ist der Standardwert von 600 Puffern ausreichend. Wenn man mit
vielen Kanälen arbeitet, Gateway-Funktionen benutzt, vielleicht eine
Mailbox betreibt oder größere Dateien auf schnellen Digi-Einstiegen
aussendet ist eine Erhöhung dieses Wertes sinnvoll. Bei SP (außer
v7.50) sollte man nicht mehr als 999 Puffer wählen (siehe Abschnitt
7.1.). Wenn man sehr wenig Speicher hat kann auch mit weniger
Puffern gearbeitet werden.
-CHnn Anzahl der Connect-Kanäle
Bisher war die Anzahl der vom TFPCX verwalteten Kanäle fest
eingestellt, was Speicherplatz und Rechenzeit verschenkte, wenn
diese Anzahl gar nicht benutzt wurde. Mit dieser Option kann die
Kanalanzahl dem Verwendungszweck angepaßt werden. Es sollte der
gleiche Wert wie beim verwendeten Terminalprogramm gewählt werden.
Möglich sind 4 bis 40 Kanäle (Default 10).
...
-F<File> Datei zur Parametereinstellung (ohne <File> gilt TFPCX.INI)
...
Die Datei kann mit einem normalen Editor erstellt werden und kann
Kommentare (eingeleitet durch '#' oder ';') und Leerzeilen ent-
halten. Vor jedem Befehl wird automatisch ein Escape-Zeichen
gesendet. Das bisher notwendige Zeichen '^' braucht nicht mehr
angegeben zu werden und wird ignoriert, so daß alte Dateien weiter
verwendet werden können. Tabulatoren werden wie Leerzeichen
behandelt und am Zeilenanfang/-ende überlesen. Eine Beispiel-Datei
ist im Archiv enthalten.
...
-NL Interne Connects (Loopback) ausschalten
Im Normalfall werden alle gesendeten Frames so behandelt, als wenn
sie auch empfangen worden wären, wodurch interne Connects für
Testzwecke möglich sind. In einigen Fällen ist das allerdings
unerwünscht (z.B. bei Tests mit externem Loopback) und kann deshalb
mit dieser Option verhindert werden. Bei hohem Datenaufkommen läßt
sich auf diese Weise auch die Belastung des Rechners etwas senken,
da die gesendeten Frames dann nicht doppelt behandelt werden müssen.
-D Test Modus (Debug)
Diese Option bezieht sich auf die in der Kommandozeile vor dem '-D'
stehende '-P'-Option und aktiviert für den (die) zugehörigen Port(s)
einen Test Modus, der bei jedem Interrupt einen Flankenwechsel am
Eingang des Lautsprechers bewirkt und damit ein Knacken oder einen
Ton erzeugt.
...
Bei KISS oder einer SCC-Karte kann mit dieser Option überprüft
werden, ob überhaupt Interrupts erzeugt werden. Diese können ständig
oder nur im Sende-/Empfangsfall auftreten.
Steht '-D' vor dem ersten '-P', so knackt es im Takt der Systemuhr.
7. Installation
...
7.1. SP (DL1MEN)
...
Bei einigen frühen Versionen von SP v7.00 gibt es durch einen Bug
evtl. Probleme beim Modembetrieb. Ein anderes Problem ergibt sich
bei dieser SP-Version, wenn man 2 Modems und einen TNC parallel
verwenden will (kommt sicher selten vor) und dabei das DRSI-
Interface benutzt. Beim Start von SP erhält man sofort eine Resync-
Meldung und ein Betrieb ist nicht möglich. Dieses Problem kann durch
einen Patch der SP.EXE beseitigt werden.
Wenn man SP v7.00 (evtl. auch frühere Versionen) verwendet, sollte
man nicht mehr als 999 TFPCX-Puffer reservieren (Option '-BU'), da
SP scheinbar nicht mit 4-stelligen Pufferzahlen zurecht kommt und
sonst das Senden von Dateien sehr schleppend abläuft. Bei SP v7.50
wurde dieses Problem behoben.
7.2. GP (DH1DAE)
GP benutzt das TFPCX automatisch, wenn es geladen ist, weshalb im
Normalfall keine extra Konfiguration nötig ist. Beim Multiport-
Betrieb sind allerdings folgende Hinweise zu beachten:
- Es muß unbedingt GP ab Version 1.50 verwendet werden. Frühere
Versionen sind nur mit einem Port komfortabel zu betreiben und
haben auch Probleme bei höheren Übertragungsraten.
- TFPCX wird mit der Option '-DM' gestartet.
- In der Datei NAMES.GP ist mindestens ein PORT-Befehl zwingend
erforderlich, weil Connect-Versuche sonst mit einer Fehlermeldung
abgebrochen werden (siehe GP.DOC).
Beispiel:
PORT0 = DB0BLN,438.450
PORT1 = DB0BLO,438.300
Mit Hilfe des TFPCX kann GP nun auch mehrere TNCs ansteuern, die
dazu den KISS-Mode unterstützen müssen (siehe Abschnitt 8.3.).
7.4. TERM (DL5FBD)
...
Bei dieser Version ist nun der Empfang von #BIN#-Files möglich. Man
geht dabei wie folgt vor (getestet mit TERM v9.98):
- mit den Befehlen '@M1' und 'E0' den Transparent-Modus ein- und das
Zeichenecho abschalten
- den BIN-Empfang mit ALT-U starten und die Abfragen (Lesebefehl
zuletzt) beantworten
- nach der Übertragung mit den Befehlen 'E1' und '@M0' wieder den
Ausgangszustand herstellen
Weitere Hinweise dazu findet man in der TERM-Dokumentation.
7.7. WINPR (DG6BI)
WINPR kann ab Version 2.0 ebenfalls mit dem TFPCX verwendet werden,
weil es das TFPC-Interface unterstützt. Da WINPR unter Microsoft
Windows läuft, funktioniert dies aber nur mit KISS oder einer SCC-
Karte (siehe Abschnitt 7.10.) und nur auf einem schnellen Rechner.
Der Multiport-Betrieb wird von WINPR nicht unterstützt. Die Option
'-DM' sollte also nicht verwendet werden.
Das TFPCX wird vor dem Start von Windows oder durch Eintrag in der
Datei WINSTART.BAT geladen. Windows muß im 386 Enhanced Mode laufen.
In der Datei WINPR.INI sind folgende Einträge erforderlich:
Port = Com5
TfpcrIrq = 253
7.8. TOP (DF8MT)
Die TOP-Dokumentation geht auch auf das TFPCX ein, so daß ich hier
nur Neuerungen erwähne. Für den Multiport-Betrieb muß das TFPCX
anstelle von '-DR' jetzt mit der Option '-DX' gestartet werden.
Unter TOP stellen sich die verschiedenen TFPCX-Ports wie getrennte
TNCs dar, wobei aufeinanderfolgenden Kanälen genau ein Port zuge-
ordnet ist. Deshalb muß beim Connect-Befehl auch keine Portnummer
angegeben werden. Bisher wurde diese Illusion allerdings durch den
Umstand getrübt, daß Connects von außen immer auf dem untersten
freien Kanal mit passendem MYCALL ankamen, unabhängig von der im TOP
gewählten Zuordnung. Mit dem Befehl '@PO' (siehe Abschnitt 8.2.)
läßt sich das nun verhindern.
Beispiel:
TFPCX soll 2 Ports und 20 Kanäle verwalten, wobei für jeden Port
jeweils 10 Kanäle vorgesehen sind. Neben der TNC-Konfiguration
sollte in TOPSET folgender INI-Befehl eingetragen werden:
@PO 00000000001111111111
Außerdem ist das TFPCX mit der Option '-CH20' aufzurufen, da als
Standard nur noch 10 Kanäle zur Verfügung stehen.
7.9. FBB (F6FBB)
Die F6FBB-BBS-Software unterstützt sowohl das TFPC- (ab v5.15) als
auch das DRSI-Interface. Ich erläutere hier nur den DRSI-Multiport-
Betrieb, da dies der allgemeinere Fall ist. Für den Modembetrieb ist
unbedingt FBB ab v5.15 erforderlich.
TFPCX wird mit den Optionen '-DR' und '-IFF' geladen. Falls mehr als
10 Kanäle benötigt werden, ist auch '-CH' (siehe Abschnitt 6.2.3.)
anzugeben. Die Konfigurationsdatei PORT.SYS muß für den Betrieb mit
2 Ports wie folgt aussehen:
# PORT.SYS for FBB 5.15
#
#Ports TNCs
1 2
#
#Com Interface Adress (Hex) Baud
7 4 0 4800
#
#TNC NbCh Com MultCh Pacln Maxfr NbFwd MxBloc M/P-Fwd Mode Freq
1 5 7 0 230 2 1 10 00/60 UDYW 144.650
2 5 7 1 230 2 1 10 00/60 UDYW 438.450
TFPCX simuliert 2 TNCs über einen virtuellen COM-Port (COM7). Inter-
face 4 steht für DRSI, Adresse und Baud werden ignoriert, müssen
aber angegeben werden. Die Summe der den Ports zugeordneten Kanäle
(NbCh) darf nicht größer als die Anzahl der vorhandenen TFPCX-Kanäle
(Option '-CH') sein. Es wird jeweils nur eine Datei INITTNC1.SYS
bzw. MAINT1.SYS verwendet, in der alle nötigen Parameter einzeln mit
Portangaben (siehe Abschnitt 8.1.) gesetzt werden. Der 'P'-Befehl
ist beim TFPCX nicht zur gleichzeitigen Einstellung aller Parameter
eines Ports benutzbar, wie beim DRSI-TNCTSR-Treiber möglich. Weitere
Informationen sind der FBB-Dokumentation zu entnehmen.
7.10. MS-Windows, OS/2 u.a.
Das TFPCX stellt beim Modembetrieb hohe Anforderungen an die
Reaktionszeiten des Systems auf Interrupts (siehe Anhang 2.), welche
von Microsoft Windows 3.x und IBM OS/2 2.0 nicht erfüllt werden
(auch wenn es manchem schwer fällt, das zu aktzeptieren). Aus diesem
Grund reagiert das TFPCX mit einer Fehlermeldung, wenn man es in
diesen Systemen für Modembetrieb starten will.
Mit einer SCC-Karte ist ein Betrieb möglich. Unter Windows hat dies
mit 1200 Baud recht gut funktioniert. Allerdings gibt es bei höheren
Baudraten auch mit SCC-Karten Probleme. Unter OS/2 lief das TFPCX
weniger gut, ich habe es allerdings nur kurz getestet.
Der KISS-Mode funktioniert bei mir mit bis zu 38400 Baud unter
beiden Systemen ohne Probleme, da die dabei verwendete COM-
Schnittstelle von Windows und OS/2 durch Treiber optimal unterstützt
wird, was bei den SCC-Karten leider (verständlicherweise) nicht der
Fall ist.
Bei anderen Multitasking-Systemen dürften ähnliche Verhältnisse
herrschen.
8.2. Besonderheiten von Befehlen
...
Die internen Timer arbeiten nur mit einer Genauigkeit von +/- 20ms
bzw. 60ms, wenn nur KISS oder die OptoPcScc-Karte ohne Timer-Port
verwendet wird, was bei der Einstellung einiger Parameter wichtig
sein kann. Bei TXTAIL (Befehl '@TA') wird diese Ungenauigkeit aber
automatisch berücksichtigt.
Nun zu den einzelnen Befehlen:
C Connect
...
Wurde mit dem Befehl '@PO' eine Portzuordnung vorgenommen, dann gilt
der dem Kanal zugeordnete Port als Default-Port.
...
U Unattended Mode (CTEXT)
...
Die Standardeinstellung 'U2' verhält sich wie 'U1', ermöglicht aber
außerdem einen Disconnect durch die connectete Station mit dem
Remote-Kommando '//Q' (oder '//q'). Dabei muß das Kommando am Anfang
eines Frames stehen.
...
@C DCD-Bearbeitung
...
Bei KISS übernimmt der TNC die DCD-Bearbeitung und dieser Befehl
bestimmt lediglich die Zeit (in 10ms-Einheiten), nach der die RX-
Anzeige verlischt, wenn kein weiteres Byte vom TNC empfangen wird.
@M Transparent-Modus
Im Terminalmode werden empfangene Steuerzeichen normalerweise umge-
wandelt (z.B. Control-Z wird als '^Z' dargestellt). Dadurch werden
die Daten verfälscht, was den Empfang von BIN-Dateien unmöglich
macht.
Mit dem Befehl '@M1' wird ein Modus aktiviert, bei dem alle Daten
ohne Veränderung (transparent) an das Terminalprogramm übergeben
werden, womit nun auch der BIN-Empfang möglich ist.
Im Gegensatz zur Original-TF 2.4 wirkt sich dieser Befehl nicht auf
die 7/8-Bit-Wandlung aus. Das TFPCX verwendet immer den 8 Bit-
Zeichensatz.
@PO Portzuordnung
Mit diesem Befehl kann man für jeden Kanal festlegen, ob er von
allen, nur von einem bestimmten oder von keinem Port aus connectet
werden kann. Wurde einem Kanal ein bestimmter Port zugewiesen, gilt
dieser auch als Default-Port beim 'C'-Befehl.
Als Parameter wird eine Zeichenkette übergeben, wobei das 1. Zeichen
zu Kanal 1 gehört, das 2. Zeichen zu Kanal 2 usw. Bei 10 Kanälen
besteht die Zeichenkette also im Normalfall aus 10 Zeichen. Werden
weniger Zeichen angegeben, bleibt die Zuordnung der restlichen
Kanäle unverändert, ist die Zeichenkette länger, werden die
überflüssigen Zeichen ignoriert. Folgende Zeichen sind möglich:
'0' bis '7' Connect nur von einem Port möglich (Portnummer)
'*' Connect von allen Ports möglich
'-' kein Connect von außen möglich
Beispiele:
@PO 0000011111*****-----
Die Kanäle 1-5 sind nur von Port 0 connectbar, die Kanäle 6-10 nur
von Port 1, die Kanäle 11-15 sind von allen Ports aus erreichbar und
die Kanäle 16-20 sind überhaupt nicht connectbar und werden für
Connects nach außen freigehalten.
@PO **********
Alle Kanäle können von allen Ports connectet werden. Dies ist die
Standardeinstellung und ist kompatibel zu früheren TFPCX-Versionen.
Eingehende Connects werden dem untersten freien Kanal zugewiesen,
auf dem das passende MYCALL eingestellt ist und dem entweder der
Port zugeordnet wurde, von dem der Connect kommt oder der von allen
Ports connectbar ist ('*'). Gibt es keinen passenden Kanal, wird der
Connect abgewiesen (BUSY).
@ST Statistik
...
Beispiel:
0 SCC0 TX 87 11 10 RX 547 201 201 ERR 1
^ ^ ^ ^ ^ ^ ^ ^ ^
1)2) 3) 4) 5) 6) 7) 8) 9)
...
9) aufgetretene Fehler (wird nur bei SCC und KISS angezeigt und nur
wenn nicht 0)
Mit diesen Werten sind einfache statistische Aussagen möglich. An
die Portbezeichnung 2) wird bei KISS ein '+' angehängt, wenn SMACK
aktiviert ist.
Wert 9) bezieht sich bei einem SCC-Port auf die Over- und Underruns
des SCC-Controllers, die immer dann auftreten, wenn nicht schnell
genug auf Interrupts reagiert wird. Bei KISS führen Zeichenverluste,
KISS-Frame- und CRC-Fehler (bei SMACK) zur Erhöhung dieses Wertes.
Wenn die Fehleranzahl schnell größer wird, ist der Rechner zu
langsam für die verwendete Baudrate oder bei KISS ist die Verbindung
zum TNC nicht in Ordnung.
...
@TA TXTAIL
TXTAIL kann in 10ms-Einheiten eingestellt werden (0-6000), ist aber
im Normalfall unter Berücksichtigung von Baudrate und Timer-
Ungenauigkeit optimal gesetzt (@TA=4 bei 300 Baud, @TA=1 sonst). Bei
KISS hängt das richtige TXTAIL vom TNC ab, weshalb hier keine
automatische Einstellung erfolgt.
8.3. KISS
Beim KISS-Betrieb gibt es einige Besonderheiten, auf die an dieser
Stelle eingegangen wird.
Wenn das TFPCX gestartet wird, muß ein zu verwendender TNC bereits
eingeschaltet und im KISS-Mode sein. Das TFPCX bietet selbst keine
Möglichkeit zur Aktivierung von KISS. Der beim TFPCR vorhandene
Befehl @K existiert hier nicht. Zum Einschalten des KISS-Modes kann
man das mitgelieferte Programm KISSINIT benutzen.
TFPCX unterstützt die KISS-Erweiterung SMACK (Version 1.0), die die
Sicherheit vor Übertragungsfehlern verbessert. SMACK wird automa-
tisch aktiviert, wenn das angeschlossene Gerät dies erlaubt. Mit dem
Befehl @ST (siehe Abschnitt 8.2.) läßt sich überprüfen, in welchem
Modus gearbeitet wird (Anzeige bei SMACK z.B. 'COM1+'). SMACK ist
erst dann aktiv, wenn mindestens je 1 Frame gesendet und empfangen
wurde.
Die Sende-/Empfangsanzeige bezieht sich bei KISS nicht auf den
eigentlichen Übertragungskanal, sondern auf die serielle Schnitt-
stelle zum TNC bzw. gekoppelten Rechner.
Zur Kopplung eines PCs mit einem anderen Rechner (z.B. Digipeater
und Mailbox) benötigt man lediglich ein Nullmodem-Kabel. Das TFPCX
arbeitet dabei immer Duplex (Befehl @D hat keine Bedeutung). Die
Parameter sind entsprechend einzustellen. Die folgenden Ausführungen
sind vor allem für normalen TNC-Betrieb wichtig.
Im KISS-Mode hat das TFPCX keine direkte Kontrolle über den
Übertragungskanal, da der TNC dazwischen geschaltet ist. Das TFPCX
hat keine Möglichkeit festzustellen, ob die Frequenz augenblicklich
frei ist und wann zu sendende Frames tatsächlich vom TNC übertragen
wurden, was zu unnötigen Aussendungen führen kann. Dabei sind
insbesondere zwei Fälle interessant:
- Das TFPCX hat einen Frame an den TNC zur Aussendung übergeben und
wartet auf die Bestätigung der anderen Station. Falls zu diesem
Zeitpunkt der Kanal längere Zeit durch eine andere Station (z.B.
Digi) belegt ist, kann der TNC den Frame nicht senden und das
TFPCX nimmt nach einer bestimmten Zeit an, daß der Frame verloren
gegangen ist und wiederholt ihn, obwohl er noch gar nicht gesendet
wurde. Die Folge ist die unnötige doppelte Aussendung des Frames.
Die Zeit zwischen Aussendung eines Frames und Empfang der
Bestätigung wird vom TFPCX gemessen und daraus ermittelt, wie
lange im Mittel auf die Antwort gewartet werden muß. Damit passt
sich diese Zeit der Kanalbelegung an und derartige Dopplungen
sollten nur selten auftreten. Durch Ändern des Parameters @A3 kann
man die Verzögerung bei Bedarf beeinflussen.
- Wenn hintereinander mehrere Frames empfangen werden, können diese
normalerweise durch einen einzigen Frame bestätigt werden. Dabei
ergibt sich die Frage, wann das TFPCX davon ausgehen kann, daß
kein weiterer Frame folgt und die Bestätigung generiert werden
kann. Beim seriellen Modem oder einer SCC-Karte wird einfach
solange gewartet, bis die Gegenstation ihre Aussendung beendet hat
und der Übertragungskanal frei ist.
Bei KISS ist dieses Vorgehen nicht möglich. Hier ist die richtige
Einstellung des Parameters @T2 besonders wichtig. Er bestimmt die
Zeit, die nach Empfang eines Frames gewartet wird, bevor ein
Bestätigungsframe erzeugt wird. Wenn vor Ablauf dieser Verzögerung
ein weiterer Frame eintrifft, beginnt die Zeitmessung von vorn.
Der Timer sollte erst ablaufen, wenn kein Frame mehr folgt,
wodurch alle empfangenen Frames zusammen bestätigt werden. Ist @T2
zu kurz eingestellt, werden unnötigerweise mehrere Bestätigungen
gesendet.
Welchen Wert muß @T2 nun erhalten? Die eingestellte Verzögerung
muß etwas größer als die maximale Sendedauer für einen Frame der
Gegenstation sein. In Abhängigkeit von der Modem-Baudrate kann man
folgende Richtwerte angeben:
Baud @T2
1200 250
2400 150 (Default)
4800 100
9600 50
Diese Angaben gelten für Frames mit 256 Datenbytes und sind recht
großzügig gewählt. Wer mit den Werten experimentieren will, sollte
dabei im Monitor beobachten, ob beim Empfang aufeinanderfolgender
Frames, jeder Frame einzeln mit einem RR-Frame bestätigt wird.
Falls das nur sehr selten auftritt, ist es aber auch aktzeptabel.
WICHTIG!
Der Default-Wert @T2=150 ist für 1200 Baud-Betrieb zu kurz. Hier
sollte unbedingt eine größere Verzögerung eingestellt werden.
Bei DAMA wird anstelle von @T2 der Parameter @T4 verwendet. Die
Standard-Einstellung @T4=1 ist für KISS nicht zu empfehlen. Für
DAMA gelten ebenfalls die genannten Richtwerte.
8.4. DAMA
...
Bei dieser Version erfolgte eine Änderung im DAMA-Slave, wodurch die
bekannten Meckermeldungen von TheNetNode-Digis bei Multiconnect nun
kaum noch auftreten sollten, was ich jedoch selbst nicht testen
konnte.
ANHANG
1. Befehlsübersicht
Befehl Parameter Beschreibung
------ --------- ------------
...
E (1) 0 kein Echo für eingegebene Zeichen
1 Echo für eingegebene Zeichen
...
U (2) 0 [Text] Connecttext unterdrücken
1 [Text] Connecttext aktiv
2 [Text] Connecttext und Remote-//Quit aktiv
...
@M (0) 0 Umwandlung empfangener Steuerzeichen
1 Transparent-Modus bei Empfang
@PO ('*') cccccccccc Portzuordnung (je Kanal ein Zeichen)
c = '0'-'7' Connect nur von Port c möglich
'*' Connect von allen Ports möglich
'-' kein Connect von außen möglich
...
2.1. Sende- und Empfangsprobleme
Der verwendete Rechner muß zuerst überhaupt in der Lage sein, die
angesprochene Zahl von Interrupts zu verkraften. Bei Überlastung
verlangsamt sich das System extrem oder stürzt sogar ab. Aus
Erfahrungen kann man etwa folgende Tabelle angeben (ohne Gewähr):
PC XT XT 286 386
MHz 5 8 12 20
Baud
300 * * * *
1200 ? ? * *
2400 - ? * *
4800 - - ? *
* Betrieb möglich
? Betrieb eventuell möglich (mit Einschränkungen)
- Betrieb unmöglich
...
2.2. Probleme mit anderen Programmen
...
Bei folgenden Programmen traten ebenfalls Probleme auf, deren genaue
Ursache unbekannt ist:
- Tastaturtreiber von DR-DOS 6.0 (Tastatur hängt), anderen Treiber
(z.B. CKEYGR.COM, der mal mit SP vertrieben wurde) verwenden
- Microsoft Mousetreiber (MOUSE.COM), Abhilfe durch anderen Treiber
- IBM VCPI.SYS-Treiber (bei Notebooks verwendet), Entfernen des
Treibers behebt evtl. das Problem
2.3. Hardwareprobleme
...
Laptops und Notebooks unterstützen meist verschiedene Stromsparmodi,
die dem TFPCX nach einer bestimmten Zeit ohne Tastendruck die be-
nötigte Rechenleistung entziehen. Bei diesen Rechnern (z.B. Olivetti
Quaderno) ist es oftmals nötig, das Powermanagment (besonders die
Absenkung des Prozessortaktes) zu deaktivieren.
3. Hardwareanschluß
...
3.2. BayCom-USCC-Karte
...
Der zweite SCC-Controller (Z8530) muß nicht unbedingt vorhanden
sein, wenn die entsprechenden Kanäle nicht benutzt werden, der erste
Controller ist jedoch immer notwendig. Damit kann jetzt auch die
9k6-USCC-Karte verwendet werden (Option -PUSCC:<Base>:<IRQ>:31).
...
Bei einigen USCC-Karten gibt es vermutlich Timing-Probleme beim
Zugriff auf den Datenport der SCC-Controller. Beim TFPCX v2.00
wurden dadurch vereinzelt sinnlose Daten gesendet. Nach dem
Herabsetzen des Bustaktes bzw. dem Austausch der SCC-Controller
durch Original-ZILOG-Typen ließen sich diese Effekte teilweise
beseitigen. Das TFPCX gibt nun die Sendedaten nicht mehr über den
Datenport aus, wie das beim BayCom ebenfalls gemacht wird. Ich
hoffe, daß diese Probleme damit nicht mehr auftreten.
4. Informationen für Softwareentwickler
...
4.1.3. Spezielle Funktionen
Die folgenden Unterfunktionen sind Erweiterungen, die nur beim TFPCX
existieren. Sie sind bei beiden Interface-Varianten vorhanden.
AH = 0xFB Abfrage von Port- und Kanalanzahl (ab v2.00)
Rückgabe: AL Anzahl der benutzten Ports (0 bis 8)
AH Anzahl vorhandener Kanäle (4 bis 40)
Die Kanalanzahl wird mit der Option '-CH' eingestellt.
...
4.2. Format von Meldungen
Im folgenden werden die Meldungen des TFPCX aufgeführt, die eine
Portnummer enthalten und damit von der TNC-Firmware abweichen.
<Port> ist eine Ziffer zwischen 0 und 7. Die Anzeige von <Port>:
erfolgt nur, wenn das TFPCX mit den Optionen '-DR', '-DX' oder '-DM'
gestartet wird. Die Monitor-Meldungen bei '-DR' wurden bei dieser
Version geändert, um unbeabsichtigte Unterschiede zum DRSI-TNCTSR-
Treiber zu beseitigen.
...
- Monitor (Optionen '-DX' und '-DM')
<Port>:CONNECT REQUEST fm <Call> via <Digis>
<Port>:fm <Call> to <Call> via <Digis> ctl <Name> pid <Hex>
- Monitor (Option '-DR' und TNCTSR)
CONNECT REQUEST fm <Port>:<Call> via <Digis>
<Port>: fm <Call> to <Call> via <Digis> ctl <Name> pid <Hex>
^
Leerzeichen
...
4.3. Extended Hostmode
Der Extended Hostmode (DG3DBI) ist eine kompatible Erweiterung des
'G'-Befehls, die es ermöglicht, mit einem globalen Poll-Befehl
Auskunft über alle Kanäle der Firmware zu erhalten, auf denen Daten
vorliegen und die damit als nächstes abzufragen sind. Die Verwendung
des Extended Hostmode bewirkt besonders bei der Nutzung von vielen
Kanälen mit sehr unterschiedlichem Datenaufkommen eine Verbesserung
des Datendurchsatzes zwischen TFPCX und Terminalprogramm.
Die globale Abfrage erfolgt durch einen 'G'-Befehl an den virtuellen
Kanal 255 (Bytefolge: 0xFF 0x01 0x00 'G'), wobei eventuelle Para-
meter ignoriert werden. Das TFPCX antwortet darauf mit einer 0-
terminierten Liste aller Kanäle, die Daten gepuffert haben (Byte-
folge: 0xFF 0x01 Kanal+1 ... 0x00). Kanal+1 ... ist die Aufzählung
der jeweils um 1 erhöhten Kanalnummern.
Beispiel:
Die Kanäle 0 (Monitorkanal), 1 und 5 haben Daten vorliegen. Das
TFPCX antwortet mit:
0xFF 0x01 0x01 0x02 0x06 0x00
Das Terminalprogramm sollte daraufhin die angegebenen Kanäle solange
direkt abfragen, bis keine Daten mehr vorhanden sind. Wenn alle
Kanäle frei sind, wird nur 0xFF 0x01 0x00 geliefert. Beim ersten
globalen Poll muß geprüft werden, ob eventuell die Fehlermeldung
"INVALID CHANNEL NUMBER" kommt, was immer dann passiert, wenn der
Extended Hostmode von der Firmware noch nicht unterstützt wird.
4.4. Bisherige Versionen
...
v2.01
- USCC-Sendeprobleme behoben, durch Ausgabe der Sendedaten über
Controlport (Timing-Probleme beim Datenport weniger USCC-Karten)
- Option -BU[nnnn] zur Einstellung der Pufferanzahl (Minimum 400,
Default 600), fehlt die Anzahl wird der max. Wert verwendet
- Anzahl der Connect-Kanäle über Option -CHnn einstellbar (4-40
Kanäle, Default 10)
- Befehl E (Echo) wieder vorhanden (Default 1, Echo ein)
- Befehl @M für #BIN#-Empfang, @M=0 Umwandlung von empfangenen
Steuerzeichen (Standard), @M=1 Transparent-Modus (für TERM)
- Init-File (Option -F) kann Leerzeilen und Kommentare enthalten
(durch '#' oder ';' eingeleitet), ESC automatisch erzeugt ('^'
wird ignoriert), Wandlung von TABs in ein Leerzeichen
- Remote-Kommando '//Q' (wenn U=1 und JHOST=0)
- Frames werden nur gemonitort, wenn mehr als 256 Puffer frei sind
(vorher 64 Puffer)
- Fehlermeldung bei Modem-Betrieb unter OS/2 2.0
- DRSI-Funktion 1 (Zeichenausgabe) gibt AH=0 zurück (Kompatibilität
zum TNCTSR-Treiber, der in AH meldet, ob Zeichen zur Eingabe
bereit stehen)
v2.10
- KISS-Mode (inkl. SMACK) unterstützt (Option -PKISS, max. 4 Ports)
- Unterstützung für PA0HZP-OptoPcScc-Karte (Option -POSCC), Clock-
Typen 4 (PA0HZP-Port mit externem Taktteiler) und 5 (PA0HZP-Timer
für 75 Hz Zeitnormal)
- BayCom-9k6-USCC-Karte unterstützt (2. SCC-Controller nicht
ansteuern, wenn nicht benutzt)
- IRQs für SCC und KISS: 2-5/7, bei AT zusätzlich: 9-12/14-15 (2=9)
- Meldungen (Monitor und CONNECT REQUEST) beim DRSI-Interface
(Option -DR) geändert (Inkompatiblitäten mit dem TNCTSR-Treiber
beseitigt), Option -DX für bisherige modifizierte Meldungen
- Befehl @PO für wahlweise Portzuordnung (Kanal nur von zugeordnetem
Port connectbar, Default-Port bei ausgehenden Connects)
- Interne Connects (Loopback) abschaltbar (Option -NL)
- TXTAIL (@TA) bei Modem und SCC unter Berücksichtigung von Baudrate
und Timer-Ungenauigkeit optimal eingestellt (@TA=4 bei 300 Baud,
@TA=1 sonst), max. Wert für @TA ist 6000 (bei KISS 255)
- 0 Ports, wenn -P nicht angegeben (kein Default-Port)
- Option -D bezieht sich auf die vorher stehende Option -P
- bei DAMA vor dem Pollen auch auf Ablauf von T1 warten (wie TF 2.6)
- Extended Hostmode (DG3DBI) unterstützt
- Remote-Kommando '//Q' nur bei U=2 (Default)
- @ST- löscht auch die ERR-Zähler
- NET/ROM-Monitor entfernt
- Default-Parameter F, N, P, R, T, U, @A3, @I, @T2, @T3, @T4 und @TA
geändert
6. Bezugshinweise
Wer Interesse am Programm TFPCX hat, schickt eine leere Diskette mit
adressierten und ausreichend frankierten Rückumschlag an:
René Stange
O.-Grotewohl-Ring 34
15344 Strausberg
mögliche Disk-Formate: 3½" 720K oder 1.44M (bevorzugt)
5¼" 360K oder 1.2M
Wiederverwendbare Umschläge mit Adreßaufkleber sind auch möglich,
Hauptsache ich muß das Porto nicht selbst bezahlen. Bitte keine
'überdimensionalen' Umschläge verwenden, sonst gibt es hier Probleme
mit dem Briefkasten.
Ich kann weder Software (z.B. Terminalprogramme) noch Hardware
(BayCom-Modem) mitliefern, die nicht von mir entwickelt wurde. Man
muß sich in diesem Fall an die entsprechenden Urheber wenden.